import Vue from 'vue'
import axios from 'axios'  //引入axios

let apiUrl = ""
if (process.env.NODE_ENV === "development") { //开发环境
  console.log("当前环境：开发环境");
  apiUrl = "/erp/api"
} else if (process.env.NODE_ENV === "production") {
  console.log("当前环境：生产环境");
  apiUrl = "/erp/api" //接口地址
}
//**其他环境可以自己再根据情况增加

// 创建并配置axios实例
const service = axios.create({
  baseURL: apiUrl,  //请求的url
  method: 'get',  //默认请求方式
  timeout: 10000, // 请求超时时间
})


service.interceptors.request.use(config => {
  // 在发送请求之前做些什么
  if (window.sessionStorage.getItem("token")) {
    console.log("token:"+window.sessionStorage.getItem("token"))
    config.headers.Authorization = window.sessionStorage.getItem("token")
    config.headers['Access-Control-Allow-Origin'] = '*'
    // config.headers.Access-Control-Allow-Origin = '*' 
  }
  return config;
}, error => {
  // Do something with request error
  //console.log("11111" + error) // for debug
  Promise.reject(error)
})


service.interceptors.response.use( (response) => {
  // 对响应数据做点什么
  // return response.data
  if(response.data.code == '401'){
    window.sessionStorage.removeItem("token")
    this.$router.push("/");
  }
  return response
},  (error) => {
  // 对响应错误做点什么
  console.log(error.message)
  if(error.message.indexOf("401")>=0)
  {
    console.log("here")
    this.$router.push("/");
  }
  return Promise.reject(error);
})

export default service
